package com.doaio.dao;

import com.doaio.dto.LinkDto;
import com.doaio.model.LinkDomain;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * @deprecation 友链Dao
 * @package com.doaio.dao
 * @author 雷楚桥
 * @email leichuqiao@126.com
 * @date 2018/11/27 17:02
 */
@Mapper
public interface LinkDao {

    /**
     * 添加友链
     * @param link
     * @return
     */
    int addLink(LinkDomain link);

    /**
     * 删除友链
     * @param lid
     * @return
     */
    int deleteLinkById(@Param("lid") Integer lid);

    /**
     * 更新友链
     * @param link
     * @return
     */
    int updateLink(LinkDomain link);

    /**
     * 根据编号获取友链
     * @param lid
     * @return
     */
    LinkDomain getLinkById(@Param("lid") Integer lid);


    /**
     * 根据类型获取link数量
     * @param type
     * @return
     */
    Long getLinksCountByType(@Param("type") String type);

    /**
     * 根据sql查询
     * @param paraMap
     * @return
     */
    List<LinkDto> selectFromSql(Map<String, Object> paraMap);

    /**
     * @deprecation 查询所有的友链
     * @author 雷楚桥
     * @email leichuqiao@126.com
     * @return List
     * @date 2018/11/27 17:25
     */
    List<LinkDomain> getLinks();
}
